package com.panfeng.xcloud.boss.provider.assets.service;

import com.panfeng.xcloud.boss.provider.assets.dto.request.BuyActiveCodeReqDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.request.BuyPointCardReqDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.request.TransferReqDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.request.WithdrawReqDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.response.BuyActiveCodeRespDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.response.BuyPointCardRespDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.response.TransferRespDTO;
import com.panfeng.xcloud.boss.provider.assets.dto.response.WithdrawRespDTO;

public interface IUserWalletService {

    /**
     * 用户发起提币
     * @param withdrawReqDTO
     * @return
     */
    WithdrawRespDTO withdraw(WithdrawReqDTO withdrawReqDTO);

    /**
     * 用户互转
     * @param transferReqDTO
     * @return
     */
    TransferRespDTO transfer(TransferReqDTO transferReqDTO);

    /**
     * 购买点卡
     * @param buyPointCardReqDTO
     * @return
     */
    BuyPointCardRespDTO buyPointCard(BuyPointCardReqDTO buyPointCardReqDTO);

    /**
     * 购买激活码
     * @param buyActiveCodeReqDTO
     * @return
     */
    BuyActiveCodeRespDTO buyActiveCode(BuyActiveCodeReqDTO buyActiveCodeReqDTO);

    /**
     * 检验交易密码
     * @return
     */
    void checkTransPwd(String userId, String transPwd);

}
